# To jest komentarz. Komentarze rozpoczynamy znakiem #
## tak oznaczane będą wyniki wykonanych poleceń
1 Podstawy pracy z programem R
Martyna Kosińska
1.1 📘 Początek pracy z programem R
1.1.1 Wypisanie liczb od 1 do 10 z odstępem co 1
1:10
[1] 1 2 3 4 5 6 7 8 9 10
# Ctrl+R - wykonanie kodu z edytora R
1.1.2 Pomoc w programie R (przykład)
?plot
uruchamianie serwera httpd dla pomocy ... wykonano
1.1.3 ❕ Załadowanie pakietu ggplot2
# install.packages("ggplot2")
# można też zapisać
# install.packages('ggplot2')
library(ggplot2)
Warning: pakiet 'ggplot2' został zbudowany w wersji R 4.2.3
# ls('package:ggplot2')
1.1.4 R jako kalukulator
2+2
[1] 4
20-2
[1] 18
6*7
[1] 42
30/5
[1] 6
# 30\5 błąd, bo ukośnik jest w przeciwną stronę
2^5
[1] 32
sqrt(4)
[1] 2
log(12)
[1] 2.484907
log(16,2)
[1] 4
pi
[1] 3.141593
sin(pi)
[1] 1.224606e-16
1.1.5 Symbol Newtona
choose(4,1)
[1] 4
1.1.6 Zaokrglenia liczb
round(2.4347247)
[1] 2
round(2.55)
[1] 3
round(2.4347247,digits=2)
[1] 2.43
1.1.7 Przypisywanie wartości do zmiennych
=7
x x
[1] 7
print(x)
[1] 7
<-10
y y
[1] 10
=x*y
z z
[1] 70
=x+y
z z
[1] 17
x;y;z
[1] 7
[1] 10
[1] 17
1.1.8 Lista nazw zmiennych
ls()
[1] "x" "y" "z"
rm(z)
ls()
[1] "x" "y"
rm(list=ls())
ls()
character(0)
1.2 📘 Typy obiektów
1.2.1 Typ liczbowy
=2.4535
n1 n1
[1] 2.4535
print(n1,3) #wyświetlenie 3 cyfr znaczących (ostatni element jest zaokrąglany)
[1] 2.45
round(n1,3)
[1] 2.454
1.2.2 Typ znakowy
="Patrycja"
t1 t1
[1] "Patrycja"
='Dawid'
t2 t2
[1] "Dawid"
print(t2,quote=FALSE)
[1] Dawid
="to jest pies"
t3
sub("pies","kot",t3)
[1] "to jest kot"
paste(t1,"i",t2)
[1] "Patrycja i Dawid"
substr(t3,9,12) #wyodrębnianie tekstu - od 9 znaku do 12
[1] "pies"
1.2.3 Typ logiczny
=TRUE
l1=T
l2=FALSE
l3 F
[1] FALSE
1.3 📘 Operatory logiczne
1.3.1 Alternatywa (lub)
|l3 l1
[1] TRUE
1.3.2 Koniunkcja (i)
&l3 l1
[1] FALSE
1.3.3 Zaprzeczenie
!l1
[1] FALSE
1.3.4 Wybrane operacje logiczne
1==1
[1] TRUE
2>3
[1] FALSE
25<=25
[1] TRUE
23>=7
[1] TRUE
12>2)&(15==12) (
[1] FALSE
sqrt(159)==13)&(7^5>252) (
[1] FALSE
1.4 📘 Klasy obiektów
class(t1)
[1] "character"
class(n1)
[1] "numeric"
identical(t1,n1)
[1] FALSE
ls()
[1] "l1" "l2" "l3" "n1" "t1" "t2" "t3"
ls.str()
l1 : logi TRUE
l2 : logi TRUE
l3 : logi FALSE
n1 : num 2.45
t1 : chr "Patrycja"
t2 : chr "Dawid"
t3 : chr "to jest pies"
is.logical(t1)
[1] FALSE
is.numeric(t1)
[1] FALSE
is.character(t1)
[1] TRUE
is.matrix(t1)
[1] FALSE
1.5 📘 Wektory
=c(10,9,8,7,6,5)
w1 w1
[1] 10 9 8 7 6 5
=c(T,T,F,F)
w2 w2
[1] TRUE TRUE FALSE FALSE
=c("Dawid","Wojtek","Robert","Kuba","Klaudia","Luiza")
w3 w3
[1] "Dawid" "Wojtek" "Robert" "Kuba" "Klaudia" "Luiza"
1:10
[1] 1 2 3 4 5 6 7 8 9 10
10:1
[1] 10 9 8 7 6 5 4 3 2 1
1.2:20.2
[1] 1.2 2.2 3.2 4.2 5.2 6.2 7.2 8.2 9.2 10.2 11.2 12.2 13.2 14.2 15.2
[16] 16.2 17.2 18.2 19.2 20.2
1.2:20.3
[1] 1.2 2.2 3.2 4.2 5.2 6.2 7.2 8.2 9.2 10.2 11.2 12.2 13.2 14.2 15.2
[16] 16.2 17.2 18.2 19.2 20.2
1.2:20.1
[1] 1.2 2.2 3.2 4.2 5.2 6.2 7.2 8.2 9.2 10.2 11.2 12.2 13.2 14.2 15.2
[16] 16.2 17.2 18.2 19.2
# ?seq
seq(16,30,3)
[1] 16 19 22 25 28
seq(to=30,by=3,from=16)
[1] 16 19 22 25 28
=seq(to=30,from=16,3)
w4 w4
[1] 16 19 22 25 28
=c(23,23,1,2,3,1)
w5
ls()
[1] "l1" "l2" "l3" "n1" "t1" "t2" "t3" "w1" "w2" "w3" "w4" "w5"
# w1 + w3
w1;w3
[1] 10 9 8 7 6 5
[1] "Dawid" "Wojtek" "Robert" "Kuba" "Klaudia" "Luiza"
+w5 w1
[1] 33 32 9 9 9 6
*w5 w1
[1] 230 207 8 14 18 5
=seq(7,10,length=10)
w6 w6
[1] 7.000000 7.333333 7.666667 8.000000 8.333333 8.666667 9.000000
[8] 9.333333 9.666667 10.000000
length(w6)
[1] 10
any(w6<0)
[1] FALSE
any(w6>0)
[1] TRUE
>0 w6
[1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
all(w1==w3)
[1] FALSE